<?php
require_once 'RegistrerView.php';
require_once 'TextStringOutput.php';

class LoginView {

	//Konstant för att slippa upprepa username osv.
	const UserName = "username";
	const Password = "password";
	const CheckBox = "autologin";
	const RegisterButton = "registreramig";
	const LogoutButton = "loggaut";
	const DeleteUserButton = "delete";
	//Cookies
	const CookieName = "cookiename";
	const CookiePassword = "cookiepassword";

	//Skriver ut xhtml logginformuläret
 	public function DoLoginBox() {
 		$message = "";
		//UsernameValue finns om jag vill sätta användarnamnet i användarfältet vid lyckad registrering
		//$userNameValue = "";
		//if(isset($_GET['username'])){
			//$userNameValue = $_GET['username'];
		//}
 		
 		// Om get har "hängt" på succes i url'en
 		if (isset($_GET['success'])){
 			$message =TextStringOutput::LyckadRegistrering;
 		}
		return "
		<div id='header'>
			$message
			<div id='titleDiv'>
				". TextStringOutput::LundinsPrylAB ."
			</div>
			<div id='regDiv'>
			<form action='' method='post'>
				<a href='?". LoginView::RegisterButton ."=". LoginView::RegisterButton ."'/>Registrera Er</a>
			</form>
			</div>
		</div>
			<div id='content'>
				<div id='loginbox'>
					<form action='?in=in' method='post'>
						<fieldset>
							<legend>
								Ange användarnamn och lösenord
							</legend>
							<label for='uname'>Användarnamn:</label></br>
							<input type='text' name='" . LoginView::UserName . "' id='uname'/>
							<br />
							<label for='passwrd'>Lösenord:</label></br>
							<input type='password' name='" . LoginView::Password . "' id='passwrd'/>
							<br />
							<input type='checkbox' name='" . LoginView::CheckBox . "' value='1' id='check'/>
							<label for='check'>Håll mig inloggad</label>
							<br />
							<input type='submit' value='Logga in' class='button' name='submit'/>
						</fieldset>
					</form>
				</div>
			</div>
			
		<div id='footer'>
			<p>&copy Klas Lundin 2011</p>
		</div>"
	;}

	//Skriver ut inloggadvyn med lista av kategorier och logout-knappen samt avregistreraknappen
	public function DoLogoutBox() {
		return "
	<div id='header'>
			<div id='titleDiv'>
				". TextStringOutput::LundinsPrylAB ."
			</div>
		<div id='regDiv'>
				<form action='?tabort=tabort' method='post' id='deletebutton'>
					<input type='submit' value='Avregistrera ert konto' onclick='confirm()' class='registrerButton' name='" . LoginView::DeleteUserButton ."'/>
				</form>
		</div>
	</div>
		<div id='content'>
				<p>Dagens citat:</p>
				". TextStringOutput::WeeklyCite() ."
			<div id='shopBasket'>
				<P>Varukorgen</p>
			</div>
			<div id='category'>
				<h2>Kategorier att köpa</h2>
				<p><a href='#'>Tavlor</a></p>
			</div>
		<form action='?ut=ut' method='post'>
	         <input type='submit' value='Logga ut' class='button' name='" . LoginView::LogoutButton ."'/>
	    </form>
	</div>";
	}

	// Kollar och returnerar användarnamn
	public function GetUserName() {
		if (isset($_POST[LoginView::UserName])) {
			return ($_POST[LoginView::UserName]);

			//Annars kollar och returnerar Cookie-användarnamn
		} else if (isset($_COOKIE[LoginView::CookieName])) {
			//returnera cookie-användarnamn;
			return $_COOKIE[LoginView::CookieName];
		}
		return NULL;
	}

	// Kollar lösenord och returnerar lösenord
	public function GetPassword() {
		if (isset($_POST[LoginView::Password])) {
			return ($_POST[LoginView::Password]);

			//Annars kollar och returnerar Cookie-lösenord
		} else if (isset($_COOKIE[LoginView::CookiePassword])) {
			//returnera cookielösenord;
			return $_COOKIE[LoginView::CookiePassword];
		}
		return NULL;
	}

	//Hämtar infon från användarnamn och lösen
	public function TriedToLogin() {
		if (isset($_POST["submit"]) && isset($_POST[LoginView::UserName]) && isset($_POST[LoginView::Password])) {
			return TRUE;

			//Annars kollar Cookie-användarnamn och Cookielösenord
		} else if (isset($_COOKIE[LoginView::CookieName]) && isset($_COOKIE[LoginView::CookiePassword])) {
			return TRUE;
		}
	}

	//Trycker vi på logout
	public function TriedToLogOut() {
		if (isset($_POST[LoginView::LogoutButton])) {
			return TRUE;
		}
		return FALSE;
	}
	
	public function TriedToDelete() {
		if (isset($_POST[LoginView::DeleteUserButton])) {
			return TRUE;
		}
		return FALSE;
	}

	public function RememberMeAndSetCookie() {
		//Ny sträng
		$stringWelcomeBack = "<p id='textString'</p>";
		//$stringWelcome = "<p id='textString'</p>";

		//Om checkboxen är ikryssad...
		if (isset($_POST[LoginView::CheckBox])) {

			setcookie(LoginView::CookieName, $_SESSION[LoginView::UserName], time() + 2592000, "/");
			setcookie(LoginView::CookiePassword, $_SESSION[LoginView::Password], time() + 2592000, "/");
		}

	}

	//Delete Cookie
	public function DeleteCookie() {
		if (isset($_COOKIE[LoginView::CookieName]) && isset($_COOKIE[LoginView::CookiePassword])) {
			setcookie(LoginView::CookieName, "", time() - 2592000, "/");
			setcookie(LoginView::CookiePassword, "", time() - 2592000, "/");

			unset($_COOKIE[LoginView::CookieName]);
			unset($_COOKIE[LoginView::CookiePassword]);
		}

	}

}
